The present invention relates generally to wireless software upgrades in wireless communication systems. More particularly, the present invention relates to a system and method in which software upgrades are provided wirelessly to mobile devices upon detecting that software currently in the mobile devices is outdated.
In recent years, the use of wireless (e.g., cellular) communication systems having mobile devices which wirelessly communicate with a network, such as a local area network (LAN) and a wide area network (WAN), has become widespread. Retail stores and warehouses, for example, may use cellular communications systems to track inventory and replenish stock. The transportation industry may use such systems at large outdoor storage facilities to keep an accurate account of incoming and outgoing shipments. In manufacturing facilities, such systems are useful for tracking parts, completed products, defects, etc.
A typical cellular communication system includes a number of fixed base stations or access points interconnected by a cable medium often referred to as a system backbone. Also included in many cellular communication systems are intermediate base stations which are not directly connected to the system backbone. Intermediate base stations, often referred to as wireless base stations or repeaters, increase the area within which base stations connected to the system backbone can communicate with mobile devices. Unless otherwise indicated, the term xe2x80x9cbase stationxe2x80x9d will hereinafter refer to both base stations hardwired to the network and wireless base stations.
Associated with each base station is a geographic cell. A cell is a geographic area in which a base station has sufficient signal strength to transmit data to and receive data from a mobile device with an acceptable error rate. Typically, base stations will be positioned along the backbone such that the combined cell area coverage from each base station provides full coverage of a building or site. Thus, mobile devices roaming within such an area can maintain continuous communication with a host computer or other device situated along the system backbone.
Each mobile device roaming within a building or site is typically preloaded with software to provide both application level and operational level instructional code (referred to generally herein as xe2x80x9coperating softwarexe2x80x9d). The mobile device includes one or more processors which execute the operating software, thereby allowing the mobile device to carry out its appropriate functions. The software is stored in memory in the mobile device and may be executed at any time depending on the particular operational needs of the mobile device.
Due to changing market needs and advancements in technology, for example, it often happens that the software which is preloaded into a mobile device becomes outdated prior to the time the mobile hardware device becomes obsolete. Therefore, a number of methods for upgrading the operating software stored in a mobile device have been developed.
One known method for updating software in a mobile device is by physically connecting the mobile device to a computer capable of upgrading the software. In order to upgrade software using this technique it is typically necessary to employ one or more service technicians to assist in connecting the mobile device to the computer with a cable or the like and executing the software upgrade routine. This results in down time for the mobile device and related service costs.
Another known method of updating the operating software in a mobile device involves wirelessly transmitting software upgrades to the mobile device. When executing a wireless software upgrade, a mobile device transmits a request to the host computer (via a base station) requesting that the host computer transfer the upgraded software. In order to ensure a mobile device has the most recent version of the operating software, each program within the operating software must be downloaded periodically from the host computer and stored in the mobile device. Unfortunately, the periodic transfer of upgraded operating software to the mobile device can be extremely time consuming and becomes increasingly more time consuming as the number of mobile devices within the system increases. Furthermore, since there is no way to determine if software has been changed since the previous time the mobile device software has been upgraded, time is frequently wasted updating the mobile device operating software with the same version of software which already exists in the mobile device.
In view of the aforementioned shortcomings associated with existing systems and techniques for upgrading mobile device operating software, there is a strong need in the art for a system and method which does not require significant down time or service costs. Moreover, there is a strong need in the art for a system and method which avoids the inefficiencies associated with conventional wireless techniques for upgrading the mobile device operating software.
A wireless communication system and method is provided in which software upgrades are wirelessly transmitted to a mobile device based on a determination of whether such an upgrade is necessary. According to one embodiment, following an initial boot-up procedure in which a mobile device associates itself with a base station connected to a backbone, a host computer coupled to the backbone queries the mobile device for indicia identifying the version of operating software stored in the mobile device. In response, the mobile device wirelessly transmits to the host computer the indicia identifying the version of its operating software via the base station. The host computer performs a comparison of the version indica provided from the mobile device with information identifying the version of corresponding operating software presently stored within an FTP or TFTP server which maintains the latest version available for each operating software. If the host computer determines the mobile device is not running the latest version of the operating software, the host computer transmits a request to the mobile device to have its operating software updated. In response to receiving the request, the mobile device communicates with the file transfer protocol (FTP) or trivial file transfer protocol (TFTP) server coupled to the backbone to have the latest versions of software downloaded. If the host computer determined that no update of the mobile device operating software was needed, the mobile device simply continues to operate using the operating software currently stored therein. In this manner, the system does not needlessly spend time replacing the operating software in the mobile devices with the same software.
Furthermore, the system and method of the present invention also allows a user to select one or more different packages of operating software which may be available from the FTP server. A user may simply select a package of operating software from a menu provided by the mobile device, and in response the mobile device prompts the FTP server to download the selected package to the mobile device. According to another feature of the invention, a WAN includes a plurality of communication systems tied together by a WAN based system backbone. A WAN based host computer provides updated information regarding the most current operating software available via the FTP server to all other host computers in the individual systems. A WAN based FTP server provides updated mobile terminal operating software to the FTP server in the individual systems. The mobile device operating software can then be distributed quickly to the various mobile devices.
In accordance with one particular aspect of the invention, a wireless communication system includes a system backbone, a host computer coupled to the system backbone, at least one base station coupled to the system backbone, the at least one base station including a base station transceiver for communicating wirelessly with mobile devices within the system, and at least one mobile device having a mobile device transceiver for communicating wirelessly with the host computer on the system backbone via the at least one base station. A method of operation includes the steps of determining whether a version of operating software stored in the at least one mobile device is a current version of the operating software, and wirelessly updating the operating software stored in the at least one mobile device if it is determined that the operating software stored in the at least one mobile device is not the current version.
In accordance with another particular aspect of the invention, a wireless communication system includes a system backbone, a host computer coupled to the system backbone, an FTP server coupled to the system backbone, at least one base station coupled to the system backbone, the at least one base station including a base station transceiver for communicating wirelessly with mobile devices within the system, and at least one mobile device having a mobile device transceiver for communicating wirelessly with the host computer and the FTP server on the system backbone via the at least one base station. A method of operation includes the steps of the host computer requesting from the at least one mobile device indicia indicative of a version of mobile device operating software stored in the at least one mobile device, the at least one mobile device transmitting the indicia indicative of the version of mobile device operating software stored in the at least one mobile device to the host computer, the host computer receiving the indicia indicative of the version of mobile device operating software stored in the at least one mobile device, and the host computer determining whether updating of the mobile device operating software is appropriate based on an initial comparison in which the indicia indicative of mobile device operating software stored in the at least one mobile device is compared to an indicia of a current version of mobile device operating software stored in at least one of the host computer and the FTP server.
In accordance with still another aspect of the invention, a wireless communication system is provided. The wireless communication system includes a system backbone, a host computer coupled to the system backbone, an FTP server coupled to the system backbone, at least one base station coupled to the system backbone, the at least one base station including a base station transceiver for communicating wirelessly with mobile devices within the system, at least one mobile device having a mobile device transceiver for communicating wirelessly with the host computer and FTP server on the system backbone via the at least one base station, and wherein the host computer and the at least one mobile device are operatively configured to determine whether to selectively update mobile device operating software therebetween based on an initial comparison in accordance with a predetermined criteria indicative of whether updating of the mobile device operating software is appropriate, and the FTP server and the at least one mobile device are operatively configured to communicate selectively the mobile device operating software determined to be appropriate for updating.
In accordance with yet another aspect of the invention, a wireless communication system is provided. The wireless communication system includes a system backbone, a host computer coupled to the system backbone, an FTP server coupled to the system backbone, at least one base station coupled to the system backbone, the at least one base station including a base station transceiver for communicating wirelessly with mobile devices within the system, at least one mobile device having a mobile device transceiver for communicating wirelessly with the host computer and the FTP server on the system backbone via the at least one base station, and a user input for receiving a user selection, and wherein the FTP server and the at least one mobile device are operatively configured to communicate selectively mobile device operating software therebetween based on the user selection.
To the accomplishment of the foregoing and related ends, the invention, then, comprises the features hereinafter fully described and particularly pointed out in the claims. The following description and the annexed drawings set forth in detail certain illustrative embodiments of the invention. These embodiments are indicative, however, of but a few of the various ways in which the principles of the invention may be employed. Other objects, advantages and novel features of the invention will become apparent from the following detailed description of the invention when considered in conjunction with the drawings.